ফ্ল্যাশডেটা ব্যবহার

Web Development - কোডইগনাইটার (Codeigniter) - CodeIgniter এর সেশন এবং কুকিজ |

Flashdata হলো CodeIgniter-এ একটি সেশন ডেটা, যা শুধুমাত্র একটি পেজ লোড পর্যন্ত উপলব্ধ থাকে। সাধারণত এটি একটি রিকোয়েস্ট থেকে পরবর্তী রিকোয়েস্টে টেম্পোরারি মেসেজ পাঠানোর জন্য ব্যবহৃত হয়, যেমন:

  • সফল মেসেজ
  • ত্রুটি বার্তা
  • নোটিফিকেশন

Flashdata এর বৈশিষ্ট্য

  1. Flashdata শুধুমাত্র একটি রিকোয়েস্ট সাইকেলের জন্য স্থায়ী থাকে।
  2. এটি স্বয়ংক্রিয়ভাবে সেশন থেকে মুছে ফেলা হয় পরবর্তী রিকোয়েস্টের পরে।
  3. এটি সাধারণত ফর্ম সাবমিশন বা রিডাইরেকশনের পরে মেসেজ প্রদর্শনের জন্য ব্যবহৃত হয়।

Flashdata সেট করা

Flashdata সেট করতে setFlashdata() মেথড ব্যবহার করা হয়।

উদাহরণ: Flashdata সেট করা

session()->setFlashdata('success', 'Your form was submitted successfully!');

এখানে:

  • 'success': Flashdata এর কী।
  • 'Your form was submitted successfully!': Flashdata এর মান।

Flashdata রিড করা

Flashdata রিড করার জন্য getFlashdata() মেথড ব্যবহার করা হয়।

উদাহরণ: Flashdata রিড করা

if (session()->getFlashdata('success')) {
    echo session()->getFlashdata('success');
}

এটি সেশন থেকে 'success' কীর Flashdata রিড করে মেসেজ প্রদর্শন করবে।


Flashdata ব্যবহার উদাহরণ

Controller

app/Controllers/Form.php:

<?php

namespace App\Controllers;

class Form extends BaseController
{
    public function submit()
    {
        // ফর্ম প্রসেসিং লজিক

        // সফল Flashdata সেট করা
        session()->setFlashdata('success', 'Your data has been saved successfully!');

        // রিডাইরেকশন
        return redirect()->to('/form');
    }
}

View

app/Views/form_view.php:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Form</title>
</head>
<body>
    <?php if (session()->getFlashdata('success')): ?>
        <div class="alert alert-success">
            <?php echo session()->getFlashdata('success'); ?>
        </div>
    <?php endif; ?>

    <form action="/form/submit" method="post">
        <button type="submit">Submit</button>
    </form>
</body>
</html>

একাধিক Flashdata সেট করা

Flashdata সেট করার সময় একাধিক কী-মূল্য জোড়া সংরক্ষণ করতে পারেন।

উদাহরণ: একাধিক Flashdata

session()->setFlashdata([
    'success' => 'Data saved successfully!',
    'error' => 'Something went wrong!'
]);

রিড করা

if (session()->getFlashdata('success')) {
    echo session()->getFlashdata('success');
}

if (session()->getFlashdata('error')) {
    echo session()->getFlashdata('error');
}

Flashdata চেক করা

Flashdata চেক করার জন্য has() মেথড ব্যবহার করতে পারেন।

উদাহরণ

if (session()->has('success')) {
    echo session()->getFlashdata('success');
}

Flashdata এর ব্যবহার ক্ষেত্র

  1. ফর্ম সাবমিশন সফল হলে নোটিফিকেশন মেসেজ।
  2. রিডাইরেকশনের পর নোটিফিকেশন দেখানো।
  3. ত্রুটি বার্তা প্রদর্শন।

সেশন এর সাথে Flashdata এর পার্থক্য

FlashdataSession Data
শুধুমাত্র একটি রিকোয়েস্ট পর্যন্ত উপলব্ধ।স্থায়ীভাবে সেশন পর্যন্ত সংরক্ষণ করা হয়।
স্বয়ংক্রিয়ভাবে মুছে ফেলা হয়।ম্যানুয়ালি মুছে ফেলতে হয়।
সাধারণত নোটিফিকেশন মেসেজের জন্য ব্যবহৃত হয়।যেকোনো ধরণের ডেটা সংরক্ষণের জন্য ব্যবহৃত হয়।

সারাংশ

CodeIgniter-এ Flashdata ব্যবহার করে সহজে টেম্পোরারি মেসেজ পাস করা যায়। এটি ফর্ম সাবমিশন বা রিডাইরেকশনের পর ব্যবহারকারীদের তথ্য প্রদর্শন করার জন্য কার্যকর একটি টুল। এটি সেশন সিস্টেমের মাধ্যমে পরিচালিত হয় এবং খুব সহজেই অ্যাপ্লিকেশনের মধ্যে ইমপ্লিমেন্ট করা যায়।

Content added By
Promotion